<template>
  <div v-if="row.actions.length>2">
    <a @click="handleClickMore(row.actions[0].name, row)">{{ row.actions ? row.actions[0].label : '' }}</a>
    <Divider type="vertical" />
    <Dropdown @on-click="(name) => handleClickMore(name, row)"
              transfer>
      <a>更多
        <Icon type="ios-arrow-down" />
      </a>
      <DropdownMenu slot="list">
        <DropdownItem v-for="(item, i) in row.actions.slice(1)"
                      :key="i"
                      :name="item.name">{{ item.label }}
        </DropdownItem>
      </DropdownMenu>
    </Dropdown>
  </div>
  <div v-else>
    <a v-if="row.actions"
       @click="handleClickMore(row.actions[0].name, row)">{{ row.actions[0].label }}</a>
    <Divider v-if="row.actions && row.actions.length>1"
             type="vertical" />
    <a v-if="row.actions && row.actions.length>1"
       @click="handleClickMore(row.actions[1].name, row)">{{ row.actions[1].label }}</a>
  </div>
</template>
<script>
    import { ApiRequest } from '@api/basePage';
    import dynamictableactions from '@/mixins/dynamictableactions'; // 混入通用代码
    export default {
        mixins: [
            dynamictableactions
        ],
        data () {
            return {
                actions: []
            }
        },
        created () {
        },
        methods: {
            handleClickMore (name, row) {
                if (name === 'Delete') {
                    this.$Modal.confirm({
                        title: '删除操作',
                        content: '确定删除此数据吗？',
                        onOk: () => {
                            let data = {
                                uuid: row.uuid
                            }
                            // 开始请求商品列表
                            ApiRequest(
                                this.requestApi.delTableList.url,
                                this.requestApi.delTableList.type,
                                data,
                                true
                            ).then(res => {
                                this.$Message.success('删除成功')
                                this.actionsChange()
                            })
                        }
                    })
                } else {
                    let obj = {} // 动作的对象信息
                    row.actions.forEach(item => {
                        if (name === item.name) {
                            obj = item
                            return false
                        }
                    })
                    this.setTableRowData(row)
                    if (obj.handleType === 'link') {
                        // 操作类型为链接时，拼接参数跳转
                        let jumpPath = this.jumpPath + obj.name;
                        this.$router.push({ path: jumpPath, query: { uuid: row.uuid, orderType: row.orderType } })
                    } else {
                        // 操作类型为弹窗时 打开弹窗
                    }
                }
            }
        }

    }
</script>
